package com.nuoniu.sibanyun.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nuoniu.sibanyun.entity.SysArea;
import com.nuoniu.sibanyun.entity.crm.CrmCustomer;
import com.nuoniu.sibanyun.entity.dto.SysAreaDto;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 行政区划 服务类
 * </p>
 *
 * @author baiqiang
 * @since 2020-06-04
 */
public interface ISysAreaService extends IService<SysArea> {

    /**
     * 获取地区列表
     * @author 小啊刚
     * @date 2020/6/4
     */
    Page<SysArea> areaPage(Page page, SysArea sysArea);

    /**
     * 保存地区
     * @author 小啊刚
     * @date 2020/6/6
     */
    void saveArea(SysArea area);

    /**
     * 删除地区
     * @author 小啊刚
     * @date 2020/6/8
     */
    void deleteArea(Long id, Integer parentCode);

    /**
     * 批量保存
     * @author 小啊刚
     * @date 2020/6/9
     */
    void saveAreaList(SysAreaDto areaList);

    /**
     * 查询
     * @param areaCode
     * @param companyId
     * @return
     */
    String findAreaTreeNamesByCode(Integer areaCode,Integer companyId );

    /**
     * 修改客户
     * @author 小啊刚
     * @date 2020-08-04
     */
    void updateCrmArea(List<CrmCustomer> customerList, Integer companyId);

    HashMap<String,String> findAreaTreeNamesById(Integer areaId, Integer companyId);

    List<Map> treeList(Integer companyId);
}
